[小ネタ]SnowSQLで複数環境に簡単に接続できるように設定してみた
こんにちは!DA(データアナリティクス)事業本部 インテグレーション部の大高です。
SnowflakeのCLIクライアントツール「SnowSQL」では、configファイルに接続情報を設定しておくと簡単に複数環境に接続することができます。今回3環境を設定して試してみたので残しておきます。
前提条件
SnowSQLはインストール済みの環境を前提としています。また、今回の検証ではWSL(Ubuntu)を利用しています。
設定方法
SnowSQLをインストールすると、設定ファイルが ~/.snowsql/config
として作成されているので、このファイルに以下のように追記します。
accountname
にはSnowflakeのログインURLに表示されているアカウント名を指定します。username
とpassword
はそのままユーザ名とパスワードです。
※パスワードが平文で保存されるのでファイルの権限には注意が必要です。
[connections.aws] accountname = foo.ap-northeast-1.aws username = foo password = bar [connections.gcp] accountname = foo.us-central1.gcp username = foo password = bar [connections.azure] accountname = foo.southeast-asia.azure username = foo password = bar
この設定のconnections.xxx
のxxx
箇所を利用して接続先を指定することができます。
接続方法
接続時には以下のように-c
オプションで接続先を指定して接続します。
$ snowsql -c xxx
または、以下のオプションでも接続できます。
$ snowsql --connection xxx
それぞれ3環境試してみました。
$ snowsql -c aws ❄ SnowSQL ❄ v1.2.10 Type SQL statements or !help foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION(); ╒════════════════════╕ │ CURRENT_REGION() │ ╞════════════════════╡ │ AWS_AP_NORTHEAST_1 │ ╘════════════════════╛ 1 Row(s) produced. Time Elapsed: 0.156s foo#COMPUTE_WH@(no database).(no schema)>!quit Goodbye!
$ snowsql -c gcp ❄ SnowSQL ❄ v1.2.10 Type SQL statements or !help foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION(); ╒══════════════════╕ │ CURRENT_REGION() │ ╞══════════════════╡ │ GCP_US_CENTRAL1 │ ╘══════════════════╛ 1 Row(s) produced. Time Elapsed: 0.181s foo#COMPUTE_WH@(no database).(no schema)>!quit Goodbye!
$ snowsql -c azure ❄ SnowSQL ❄ v1.2.10 Type SQL statements or !help foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION(); ╒═════════════════════╕ │ CURRENT_REGION() │ ╞═════════════════════╡ │ AZURE_SOUTHEASTASIA │ ╘═════════════════════╛ 1 Row(s) produced. Time Elapsed: 0.312s foo#COMPUTE_WH@(no database).(no schema)>!quit Goodbye!
ちゃんと切り替えられていますね。
まとめ
この設定は複数環境を利用している場合には、簡単に切り替えて接続できるのでとても便利な設定かと思います。
どなたかのお役に立てば幸いです。それでは!